home *** CD-ROM | disk | FTP | other *** search
- unit Setup;
-
- interface
-
- uses
- Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
- Dialogs, ExtCtrls, StdCtrls, Spin, ComCtrls, NCTAUDIOEDITOR2Lib_TLB, FileCtrl, Math;
-
- type
- TfrmOptions = class(TForm)
- PageControl1: TPageControl;
- tSystem: TTabSheet;
- tScales: TTabSheet;
- tColors: TTabSheet;
- tData: TTabSheet;
- tRecording: TTabSheet;
- GroupBox1: TGroupBox;
- Label1: TLabel;
- spinBufSize: TSpinEdit;
- Label2: TLabel;
- spinBufCount: TSpinEdit;
- Label3: TLabel;
- spinBufTick: TSpinEdit;
- Label4: TLabel;
- GroupBox2: TGroupBox;
- txtTempDir: TEdit;
- Label5: TLabel;
- spinUndoRedo: TSpinEdit;
- chSENAI: TCheckBox;
- GroupBox3: TGroupBox;
- chHSEnable: TCheckBox;
- chHSGrid: TCheckBox;
- cmbHSType: TComboBox;
- btnHSFont: TButton;
- GroupBox4: TGroupBox;
- chVSEnable: TCheckBox;
- chVSGrid: TCheckBox;
- cmbVSType: TComboBox;
- btnVSFont: TButton;
- cmbVSOrien: TComboBox;
- rgBorder: TRadioGroup;
- GroupBox5: TGroupBox;
- chMarkerBarEnabled: TCheckBox;
- chMarkerBkEnabled: TCheckBox;
- lstColors: TListBox;
- btnChangeColor: TButton;
- ColorPanel: TPanel;
- ColorDialog1: TColorDialog;
- chSmooth: TCheckBox;
- lblCrossfadeTime: TLabel;
- spinCrossfadeTime: TSpinEdit;
- lblCrossfadeTimeMs: TLabel;
- GroupBox6: TGroupBox;
- gbAttack: TGroupBox;
- gbRelease: TGroupBox;
- GroupBox9: TGroupBox;
- rgVisType: TRadioGroup;
- spinAttackTime: TSpinEdit;
- spinAttackLevel: TSpinEdit;
- spinReleaseLevel: TSpinEdit;
- spinReleaseTime: TSpinEdit;
- lblAttackTime: TLabel;
- lblAttackLevel: TLabel;
- lblReleaseLevel: TLabel;
- lblReleaseTime: TLabel;
- chAccuEnabled: TCheckBox;
- spinAGCHighLevel: TSpinEdit;
- spinAGCRate: TSpinEdit;
- spinAGCLowLevel: TSpinEdit;
- chAGCEnabled: TCheckBox;
- lblAGCLowLevel: TLabel;
- lblAGCHighLevel: TLabel;
- lblAGCRate: TLabel;
- btnChangeDir: TButton;
- FontDialog1: TFontDialog;
- Label15: TLabel;
- Label16: TLabel;
- Label17: TLabel;
- procedure lstColorsClick(Sender: TObject);
- procedure FormShow(Sender: TObject);
- procedure btnChangeColorClick(Sender: TObject);
- procedure btnChangeDirClick(Sender: TObject);
- procedure chAGCEnabledClick(Sender: TObject);
- procedure chAccuEnabledClick(Sender: TObject);
- procedure spinBufSizeChange(Sender: TObject);
- procedure spinBufCountChange(Sender: TObject);
- procedure spinBufTickChange(Sender: TObject);
- procedure spinUndoRedoChange(Sender: TObject);
- procedure chSENAIClick(Sender: TObject);
- procedure chHSEnableClick(Sender: TObject);
- procedure chHSGridClick(Sender: TObject);
- procedure chVSEnableClick(Sender: TObject);
- procedure chVSGridClick(Sender: TObject);
- procedure cmbHSTypeClick(Sender: TObject);
- procedure cmbVSTypeClick(Sender: TObject);
- procedure cmbVSOrienClick(Sender: TObject);
- procedure rgBorderClick(Sender: TObject);
- procedure chMarkerBarEnabledClick(Sender: TObject);
- procedure chMarkerBkEnabledClick(Sender: TObject);
- procedure chSmoothClick(Sender: TObject);
- procedure spinCrossfadeTimeChange(Sender: TObject);
- procedure spinAttackTimeChange(Sender: TObject);
- procedure spinAttackLevelChange(Sender: TObject);
- procedure spinReleaseTimeChange(Sender: TObject);
- procedure spinReleaseLevelChange(Sender: TObject);
- procedure spinAGCLowLevelChange(Sender: TObject);
- procedure spinAGCHighLevelChange(Sender: TObject);
- procedure spinAGCRateChange(Sender: TObject);
- procedure rgVisTypeClick(Sender: TObject);
- procedure btnHSFontClick(Sender: TObject);
- procedure btnVSFontClick(Sender: TObject);
- private
- { Private declarations }
- public
- { Public declarations }
- Colors: IAudioEditor2Colors;
- end;
-
- var
- frmOptions: TfrmOptions;
-
- implementation
-
- uses Main;
-
- {$R *.dfm}
- //---------------------------------------------------------------------
- procedure TfrmOptions.lstColorsClick(Sender: TObject);
- begin
- case (lstColors.ItemIndex) of
- 0: ColorPanel.Color := TColor(Colors.DigitalWaveform);
- 1: ColorPanel.Color := TColor(Colors.AnalogWaveform);
- 2: ColorPanel.Color := TColor(Colors.Background);
- 3: ColorPanel.Color := TColor(Colors.CenterLine);
- 4: ColorPanel.Color := TColor(Colors.SelectDigitalWaveform);
- 5: ColorPanel.Color := TColor(Colors.SelectAnalogWaveform);
- 6: ColorPanel.Color := TColor(Colors.SelectBackground);
- 7: ColorPanel.Color := TColor(Colors.SelectCenterLine);
- 8: ColorPanel.Color := TColor(Colors.Grid);
- 9: ColorPanel.Color := TColor(Colors.Cursor);
- 10: ColorPanel.Color := TColor(Colors.PlayCursor);
- 11: ColorPanel.Color := TColor(Colors.Boundary);
- 12: ColorPanel.Color := TColor(Colors.Scales);
- 13: ColorPanel.Color := TColor(Colors.Font);
- 14: ColorPanel.Color := TColor(Colors.CueMarker);
- 15: ColorPanel.Color := TColor(Colors.RangeMarker);
- 16: ColorPanel.Color := TColor(Colors.RangeMarkerBackground);
- end;
- end;
- //---------------------------------------------------------------------------
-
- procedure TfrmOptions.FormShow(Sender: TObject);
- begin
- Colors := frmMain.AudioEditor1.Colors;
- lstColors.ItemIndex := 0;
- lstColorsClick(Sender);
- spinBufSize.Value := frmMain.AudioEditor1.DeviceInput.BufferSize;
- spinBufCount.Value := frmMain.AudioEditor1.DeviceInput.BufferCount;
- spinBufTick.Value := frmMain.AudioEditor1.DeviceInput.TimerInterval;
- txtTempDir.Text := frmMain.AudioEditor1.TempDirectory;
- spinUndoRedo.Value := frmMain.AudioEditor1.UndoRedoCount;
- chSENAI.Checked := frmMain.AudioEditor1.FileInfo.SaveExtraInfoEnabled;
-
- chHSGrid.Checked := frmMain.AudioEditor1.ScaleY.Grid;
- chVSGrid.Checked := frmMain.AudioEditor1.ScaleX.Grid;
- chHSEnable.Checked := frmMain.AudioEditor1.ScaleX.Visible;
- chVSEnable.Checked := frmMain.AudioEditor1.ScaleY.Visible;
-
- rgBorder.ItemIndex := frmMain.AudioEditor1.TypeBorder;
- cmbHSType.ItemIndex := frmMain.AudioEditor1.ScaleX.Type_ - 1;
- cmbVSType.ItemIndex := frmMain.AudioEditor1.ScaleY.Type_ - 1;
- cmbVSOrien.ItemIndex := frmMain.AudioEditor1.ScaleY.Orientation - 1;
-
- chMarkerBarEnabled.Checked := frmMain.AudioEditor1.MarkerBarEnabled;
- chMarkerBkEnabled.Checked := frmMain.AudioEditor1.MarkerBackgroundEnabled;
-
- chSmooth.Checked := frmMain.AudioEditor1.Transform.SmoothEnabled;
- spinCrossfadeTime.Value := frmMain.AudioEditor1.Transform.SmoothTime;
-
- rgVisType.ItemIndex := frmMain.AudioEditor1.RecordVisualizationType - 1;
- chAccuEnabled.Checked := frmMain.AudioEditor1.Recorder.AccuEnabled;
-
- spinAttackTime.Value := frmMain.AudioEditor1.Recorder.AccuAttackTime;
- spinReleaseTime.Value := frmMain.AudioEditor1.Recorder.AccuReleaseTime;
- spinAttackLevel.Value := frmMain.AudioEditor1.Recorder.AccuAttackLevel;
- spinReleaseLevel.Value := frmMain.AudioEditor1.Recorder.AccuReleaseLevel;
-
- spinAGCLowLevel.Value := frmMain.AudioEditor1.Recorder.AGCLowLevel;
- spinAGCHighLevel.Value := frmMain.AudioEditor1.Recorder.AGCHighLevel;
- spinAGCRate.Value := Floor(frmMain.AudioEditor1.Recorder.AGCAttackTime);
- chAGCEnabled.Checked := frmMain.AudioEditor1.Recorder.AGCEnabled;
-
- chAGCEnabledClick(Sender);
- chAccuEnabledClick(Sender);
- chSmoothClick(Sender);
- end;
- //---------------------------------------------------------------------------
-
- procedure TfrmOptions.btnChangeColorClick(Sender: TObject);
- begin
- if (ColorDialog1.Execute()) then begin
- ColorPanel.Color := ColorDialog1.Color;
- case (lstColors.ItemIndex) of
- 0: Colors.DigitalWaveform := ColorPanel.Color;
- 1: Colors.AnalogWaveform := ColorPanel.Color;
- 2: Colors.Background := ColorPanel.Color;
- 3: Colors.CenterLine := ColorPanel.Color;
- 4: Colors.SelectDigitalWaveform := ColorPanel.Color;
- 5: Colors.SelectAnalogWaveform := ColorPanel.Color;
- 6: Colors.SelectBackground := ColorPanel.Color;
- 7: Colors.SelectCenterLine := ColorPanel.Color;
- 8: Colors.Grid := ColorPanel.Color;
- 9: Colors.Cursor := ColorPanel.Color;
- 10: Colors.PlayCursor := ColorPanel.Color;
- 11: Colors.Boundary := ColorPanel.Color;
- 12: Colors.Scales := ColorPanel.Color;
- 13: Colors.Font := ColorPanel.Color;
- 14: Colors.CueMarker := ColorPanel.Color;
- 15: Colors.RangeMarker := ColorPanel.Color;
- 16: Colors.RangeMarkerBackground := ColorPanel.Color;
- end;
- end;
- end;
- //---------------------------------------------------------------------------
-
- procedure TfrmOptions.btnChangeDirClick(Sender: TObject);
- var
- s: AnsiString;
- begin
- s := txtTempDir.Text;
- if (SelectDirectory('Select Temp Directory','',s)) then begin
- frmMain.AudioEditor1.TempDirectory := s;
- end;
- txtTempDir.Text := frmMain.AudioEditor1.TempDirectory;
- end;
- //---------------------------------------------------------------------------
-
- procedure TfrmOptions.chAGCEnabledClick(Sender: TObject);
- begin
- frmMain.AudioEditor1.Recorder.AGCEnabled := chAGCEnabled.Checked;
- spinAGCRate.Enabled := chAGCEnabled.Checked;
- lblAGCRate.Enabled := chAGCEnabled.Checked;
- spinAGCLowLevel.Enabled := chAGCEnabled.Checked;
- lblAGCLowLevel.Enabled := chAGCEnabled.Checked;
- spinAGCHighLevel.Enabled := chAGCEnabled.Checked;
- lblAGCHighLevel.Enabled := chAGCEnabled.Checked;
- frmMain.btnAGC.Down := chAGCEnabled.Checked;
- end;
- //---------------------------------------------------------------------------
-
- procedure TfrmOptions.chAccuEnabledClick(Sender: TObject);
- begin
- frmMain.AudioEditor1.Recorder.AccuEnabled := chAccuEnabled.Checked;
-
- gbRelease.Enabled := chAccuEnabled.Checked;
- gbAttack.Enabled := chAccuEnabled.Checked;
-
- spinAttackTime.Enabled := chAccuEnabled.Checked;
- spinAttackLevel.Enabled := chAccuEnabled.Checked;
- spinReleaseTime.Enabled := chAccuEnabled.Checked;
- spinReleaseLevel.Enabled := chAccuEnabled.Checked;
-
- lblAttackTime.Enabled := chAccuEnabled.Checked;
- lblAttackLevel.Enabled := chAccuEnabled.Checked;
- lblReleaseTime.Enabled := chAccuEnabled.Checked;
- lblReleaseLevel.Enabled := chAccuEnabled.Checked;
- end;
- //---------------------------------------------------------------------------
-
- procedure TfrmOptions.spinBufSizeChange(Sender: TObject);
- begin
- frmMain.AudioEditor1.DeviceInput.BufferSize := spinBufSize.Value;
- frmMain.AudioEditor1.DeviceOutput.BufferSize := spinBufSize.Value;
- end;
- //---------------------------------------------------------------------------
-
- procedure TfrmOptions.spinBufCountChange(Sender: TObject);
- begin
- frmMain.AudioEditor1.DeviceInput.BufferCount := spinBufCount.Value;
- frmMain.AudioEditor1.DeviceOutput.BufferCount := spinBufCount.Value;
- end;
- //---------------------------------------------------------------------------
-
- procedure TfrmOptions.spinBufTickChange(Sender: TObject);
- begin
- frmMain.AudioEditor1.DeviceInput.TimerInterval := spinBufTick.Value;
- frmMain.AudioEditor1.DeviceOutput.TimerInterval := spinBufTick.Value;
- end;
- //---------------------------------------------------------------------------
-
- procedure TfrmOptions.spinUndoRedoChange(Sender: TObject);
- begin
- frmMain.AudioEditor1.UndoRedoCount := spinUndoRedo.Value;
- end;
- //---------------------------------------------------------------------------
-
- procedure TfrmOptions.chSENAIClick(Sender: TObject);
- begin
- frmMain.AudioEditor1.FileInfo.SaveExtraInfoEnabled := chSENAI.Checked;
- end;
- //---------------------------------------------------------------------------
-
- procedure TfrmOptions.chHSEnableClick(Sender: TObject);
- begin
- frmMain.AudioEditor1.ScaleX.Visible := chHSEnable.Checked;
- end;
- //---------------------------------------------------------------------------
-
- procedure TfrmOptions.chHSGridClick(Sender: TObject);
- begin
- frmMain.AudioEditor1.ScaleX.Grid := chHSGrid.Checked;
- end;
- //---------------------------------------------------------------------------
-
- procedure TfrmOptions.chVSEnableClick(Sender: TObject);
- begin
- frmMain.AudioEditor1.ScaleY.Visible := chVSEnable.Checked;
- end;
- //---------------------------------------------------------------------------
-
- procedure TfrmOptions.chVSGridClick(Sender: TObject);
- begin
- frmMain.AudioEditor1.ScaleY.Grid := chVSGrid.Checked;
- end;
- //---------------------------------------------------------------------------
-
- procedure TfrmOptions.cmbHSTypeClick(Sender: TObject);
- begin
- frmMain.AudioEditor1.ScaleX.Type_ := cmbHSType.ItemIndex + 1;
- end;
- //---------------------------------------------------------------------------
-
- procedure TfrmOptions.cmbVSTypeClick(Sender: TObject);
- begin
- frmMain.AudioEditor1.ScaleY.Type_ := cmbVSType.ItemIndex + 1;
- end;
- //---------------------------------------------------------------------------
-
- procedure TfrmOptions.cmbVSOrienClick(Sender: TObject);
- begin
- frmMain.AudioEditor1.ScaleY.Orientation := cmbVSOrien.ItemIndex + 1;
- end;
- //---------------------------------------------------------------------------
-
- procedure TfrmOptions.rgBorderClick(Sender: TObject);
- begin
- frmMain.AudioEditor1.TypeBorder := rgBorder.ItemIndex;
- end;
- //---------------------------------------------------------------------------
-
- procedure TfrmOptions.chMarkerBarEnabledClick(Sender: TObject);
- begin
- frmMain.AudioEditor1.MarkerBarEnabled := chMarkerBarEnabled.Checked;
- end;
- //---------------------------------------------------------------------------
-
- procedure TfrmOptions.chMarkerBkEnabledClick(Sender: TObject);
- begin
- frmMain.AudioEditor1.MarkerBackgroundEnabled := chMarkerBkEnabled.Checked;
- end;
- //---------------------------------------------------------------------------
-
- procedure TfrmOptions.chSmoothClick(Sender: TObject);
- begin
- frmMain.AudioEditor1.Transform.SmoothEnabled := chSmooth.Checked;
- lblCrossfadeTimeMs.Enabled := chSmooth.Checked;
- lblCrossfadeTime.Enabled := chSmooth.Checked;
- spinCrossfadeTime.Enabled := chSmooth.Checked;
- end;
- //---------------------------------------------------------------------------
-
- procedure TfrmOptions.spinCrossfadeTimeChange(Sender: TObject);
- begin
- frmMain.AudioEditor1.Transform.SmoothTime := spinCrossfadeTime.Value;
- end;
- //---------------------------------------------------------------------------
-
- procedure TfrmOptions.spinAttackTimeChange(Sender: TObject);
- begin
- frmMain.AudioEditor1.Recorder.AccuAttackTime := spinAttackTime.Value;
- end;
- //---------------------------------------------------------------------------
-
- procedure TfrmOptions.spinAttackLevelChange(Sender: TObject);
- begin
- frmMain.AudioEditor1.Recorder.AccuAttackLevel := spinAttackLevel.Value;
- end;
- //---------------------------------------------------------------------------
-
- procedure TfrmOptions.spinReleaseTimeChange(Sender: TObject);
- begin
- frmMain.AudioEditor1.Recorder.AccuReleaseTime := spinReleaseTime.Value;
- end;
- //---------------------------------------------------------------------------
-
- procedure TfrmOptions.spinReleaseLevelChange(Sender: TObject);
- begin
- frmMain.AudioEditor1.Recorder.AccuReleaseLevel := spinReleaseLevel.Value;
- end;
- //---------------------------------------------------------------------------
-
- procedure TfrmOptions.spinAGCLowLevelChange(Sender: TObject);
- begin
- frmMain.AudioEditor1.Recorder.AGCLowLevel := spinAGCLowLevel.Value;
- end;
- //---------------------------------------------------------------------------
-
- procedure TfrmOptions.spinAGCHighLevelChange(Sender: TObject);
- begin
- frmMain.AudioEditor1.Recorder.AGCHighLevel := spinAGCHighLevel.Value;
- end;
- //---------------------------------------------------------------------------
-
- procedure TfrmOptions.spinAGCRateChange(Sender: TObject);
- begin
- frmMain.AudioEditor1.Recorder.AGCAttackTime := spinAGCRate.Value;
- end;
- //---------------------------------------------------------------------------
-
- procedure TfrmOptions.rgVisTypeClick(Sender: TObject);
- begin
- frmMain.AudioEditor1.RecordVisualizationType := rgVisType.ItemIndex + 1;
- end;
- //---------------------------------------------------------------------------
-
- procedure TfrmOptions.btnHSFontClick(Sender: TObject);
- begin
- if (FontDialog1.Execute()) then begin
- end;
- end;
- //---------------------------------------------------------------------------
-
- procedure TfrmOptions.btnVSFontClick(Sender: TObject);
- begin
- if (FontDialog1.Execute()) then begin
- end;
- end;
- //---------------------------------------------------------------------------
- end.
-